//
//  SDWebImageViewController.m
//  MyProject
//
//  Created by yun on 2018/4/17.
//  Copyright © 2018年 yun. All rights reserved.
//

#import "SDWebImageViewController.h"

@interface SDWebImageViewController ()

@end

@implementation SDWebImageViewController
/*
 SDWebImageOptions枚举：
 
 默认情况下,如果一个url在下载的时候失败了,那么这个url会被加入黑名单并且library不会尝试再次下载,这个flag会阻止library把失败的url加入黑名单(简单来说如果选择了这个flag,那么即使某个url下载失败了,sdwebimage还是会尝试再次下载他
 SDWebImageRetryFailed = 1 << 0,
 
 默认情况下,图片会在交互发生的时候下载(例如你滑动tableview的时候),这个flag会禁止这个特性,导致的结果就是在scrollview减速的时候,才会开始下载(也就是你滑动的时候scrollview不下载,你手从屏幕上移走,scrollview开始减速的时候才会开始下载图片
  SDWebImageLowPriority = 1 << 1,
 
 这个flag禁止磁盘缓存,只有内存缓存
 SDWebImageCacheMemoryOnly = 1 << 2,
 
 这个flag会在图片下载的时候就显示(就像你用浏览器浏览网页的时候那种图片下载,一截一截的显示
 SDWebImageProgressiveDownload = 1 << 3,
 
 一个图片缓存了,还是会重新请求.并且缓存侧略依据NSURLCache而不是SDWebImage.URL不变,图片会更新时使用
 SDWebImageRefreshCached = 1 << 4,
 
 启动后台下载,加入你进入一个页面,有一张图片正在下载这时候你让app进入后台,图片还是会继续下载(这个估计要开backgroundfetch才有用)
 SDWebImageContinueInBackground = 1 << 5,
 
 可以控制存在NSHTTPCookieStore的cookies.
 SDWebImageHandleCookies = 1 << 6,
 
 允许不安全的SSL证书,在正式环境中慎用
 SDWebImageAllowInvalidSSLCertificates = 1 << 7,
 
 默认情况下,image在装载的时候是按照他们在队列中的顺序装载的(就是先进先出).这个flag会把他们移动到队列的前端,并且立刻装载,而不是等到当前队列装载的时候再装载.
 SDWebImageHighPriority = 1 << 8,
 
 默认情况下,占位图会在图片下载的时候显示.这个flag开启会延迟占位图显示的时间,等到图片下载完成之后才会显示占位图.
 SDWebImageDelayPlaceholder = 1 << 9,
 
 Transform image
 SDWebImageTransformAnimatedImage = 1 << 10,
 
 默认情况下，下载后图像被添加到imageView。 但在某些情况下，我们希望在设置图像之前可以手动控制（例如应用过滤器或使用淡入淡出动画添加）。如果要在成功完成时手动设置图像，请使用此标记
 SDWebImageAvoidAutoSetImage = 1 << 11,
 
 默认情况下，图像将根据其原始大小进行解码。 在iOS上，此标志会将图像缩小到与受限制的设备内存兼容的尺寸。如果设置了“SDWebImageProgressiveDownload”标志，则该flag失效。
 SDWebImageScaleDownLargeImages = 1 << 12,
 
 默认情况下，当图像缓存在内存中时，我们不会查询磁盘数据。 该掩码可以强制同时查询磁盘数据。建议将此标志与'SDWebImageQueryDiskSync`一起使用，以确保图像在同一个runloop中加载。
 SDWebImageQueryDataWhenInMemory = 1 << 13,
 
 默认情况下，我们同步查询内存缓存，异步访问磁盘缓存。 此掩码可以强制同步查询磁盘缓存，以确保图像在同一个runloop中加载。如果禁用内存缓存或在某些其他情况下，此标志可避免在单元重用期间闪烁。
 SDWebImageQueryDiskSync = 1 << 14,
 
 默认情况下，当缓存丢失时，图像从网络下载。 该标志可以防止网络下载，只从缓存中加载。
  SDWebImageFromCacheOnly = 1 << 15,
 
 默认情况下，当您使用`SDWebImageTransition`在图像加载完成后进行视图转换时，此转换仅适用于从网络下载图像。 这个掩码也可以强制为内存和磁盘缓存应用视图转换。
 SDWebImageForceTransition = 1 << 16
 
 */


- (void)viewDidLoad {
    [super viewDidLoad];
    
    UIImageView *imgv = [[UIImageView alloc] init];
    [self.view addSubview:imgv];
    [imgv mas_makeConstraints:^(MASConstraintMaker *make) {
        make.edges.equalTo(self.view);
    }];
    
    [imgv sd_setImageWithURL:[NSURL URLWithString:@"http://pic1.5442.com/2013/0607/04/11.jpg"] placeholderImage:nil options:SDWebImageProgressiveDownload];
    
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
  
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

@end
